package com.mes.biz.service;

import com.github.pagehelper.PageInfo;
import com.mes.biz.domain.BizOrder;
import com.mes.biz.domain.BizOrderInstaller;
import com.mes.biz.domain.vo.OrderDeliveryVo;
import com.mes.biz.domain.vo.OrderInstallVo;
import com.mes.common.core.service.BaseService;

import java.util.List;

/**
 * 销售单安装人员Service接口
 * @author hwg
 * @email hwg
 * @date 2023-05-15
 */
public interface BizOrderInstallerService extends BaseService<BizOrderInstaller> {

    /**
     * 批量删除销售单安装人员
     * @param ids 需要删除的销售单安装人员ID集合
     * @return 结果
     */
    public int deleteBizOrderInstallerByIds(String[] ids);

    /**
     * 根据订单id查询安装师傅
     * @param orderId
     * @return
     */
    List<BizOrderInstaller> getBizOrderInstallerByOrderId(String orderId, String installerType);

    boolean getInstallerByOrderId(String orderId, String installerType);

    public boolean updateStatus(BizOrderInstaller bizOrderInstaller);

    boolean saveBatch(BizOrder bizOrder);

    /**
     * 查询配送统计
     * @param bizOrderInstaller
     * @return
     */
    PageInfo<OrderDeliveryVo> listDeliveryStatPage(BizOrderInstaller bizOrderInstaller);

    List<OrderDeliveryVo> listDeliveryStat(BizOrderInstaller bizOrderInstaller);

    /**
     * 查询安装统计
     * @param bizOrderInstaller
     * @return
     */
    PageInfo<OrderInstallVo> listInstallStatPage(BizOrderInstaller bizOrderInstaller);

    List<OrderInstallVo> listInstallStat(BizOrderInstaller bizOrderInstaller);
    public List<BizOrderInstaller> getInstallNameByOrderId(String orderId);
}
